package com.fangdada.demoreactor8.reactor8;

import java.util.Observable;
import java.util.Observer;

/**
 * @Author: fd
 * @Date 2021/11/29 14:48
 * @Description: 响应式编程（Java 实现）
 * Java8 及其之前版本是提供的观察者模式两个类 Observer 和 Observable实现
 */
public class ObserverDemo extends Observable {

	public static void main(String[] args) {
		ObserverDemo observerDemo = new ObserverDemo();
		// 添加观察者
		observerDemo.addObserver((o,arg)->{
			System.out.println("发生变化");
		});
		observerDemo.addObserver((o,arg)->{
			System.out.println("手动被观察者通知，准备改变");
		});
		// 这里必须进行两个方法调用才可以响应
		// 设置数据变化
		observerDemo.setChanged();
		// 设置notify通知才会有输出
		observerDemo.notifyObservers();
	}

}
